In a typical business environment, a business may generate revenue as a result of various activities and deliverables for their customers and/or clients. Often, a business may have multiple sources of revenue, e.g., sales orders, manual invoices, projects, subscriptions, CSV Imports, or third party rating engines. However, having multiple and different sources for revenue can present difficulties for conventional approaches used to price, bill, and recognize revenue for those source events. This is because traditional approaches are often focused on a single source of revenue and do not offer enough flexibility in the pricing, billing, and revenue recognition solution components. For example, a system may track fulfillment events for shipping inventory items, but is not suitable for tracking the recurring charges incurred as part of the associated support contract. It may also lack the flexibility to properly price those support charges, as the system is focused on pricing discrete physical deliverables. This is particularly cumbersome due to recent industry trends where more businesses offer hybrid “bundled” offerings that include not only physical items, but also recurring support components, and services to configure those devices. Further complicating these challenges are customers' desires to see a unified invoice covering all of their billable items, along with recent revenue recognition changes that require that revenue be allocated across all of the components contributing to this total bundle; this requires a single system that can address the recognition of revenue from a variety of sources simultaneously. Of course, these complex billing and revenue recognition requirements are accompanied by an equivalently complicated set of reporting requirements addressing needs around forecasting and what-if scenarios that are often met by attempting to combine data from a disparate set of domain-specific applications.
For example, a charge derived from a subscription service may impact multiple aspects of the data used to generate the types of reports desired by users. In the case of a report or reports generated in response to a request submitted by users of an enterprise-wide Customer Relationship Management (CRM) system, the affected sub-systems or records may include those of a billing record system, a revenue tracking system, and/or a report generating system. Thus, a single subscription service charge may impact more than the sub-system it is directly associated with. Similarly, even a one-time sales order may have an impact on one or more of the mentioned sub-systems. Because of this possibility, each subsystem is typically configured in a manner so that it is capable of interfacing with multiple types of charges (i.e., there is a one-to-many relationship between a specific sub-system and multiple charge sources, and a corresponding one-to-many relationship between a specific charge source and the multiple sub-systems). As a result, multiple customized interfaces are maintained by a single business entity in order to encompass the ways or sources in which charges are generated, tracked and saved. Unfortunately, this approach of implementing a one-to-one customization between each of multiple subsystems and each of multiple charge sources is inefficient, prone to error, and difficult to maintain in proper relationship to each other when changes are made to one or more of the sub-systems and how a subs-system handles a charge.
Embodiments of the inventive system and methods are directed to overcoming the limitations associated with conventional approaches to configuring multiple business data processing sub-systems to accept and process data arising from multiple charge sources or other sources of ratable events, both individually and collectively.